#ifndef VPAGELAYOUT_H
#define VPAGELAYOUT_H

#include <QWidget>
#include <QTabWidget>
#include <QLabel>
#include <QPushButton>
#include <QLineEdit>
#include <QVBoxLayout>
#include <QFile>
#include <QTextStream>
#include <QMessageBox>
#include <QFileDialog>
#include <QMessageBox>
#include "vcomstruct.h"
#include "vchartwidget.h"
#include "c3dwidget.h"

class vPageLayout : public QWidget
{
    Q_OBJECT
public:
    explicit vPageLayout(QWidget *parent = nullptr);
    ~vPageLayout(void);

    /* 创建整体垂直布局 */
    QVBoxLayout *layoutall = nullptr;

    /* 创建界面上半部分选卡 */
    QTabWidget *vMtabWidget = nullptr;

    /* 创建选择文件部分 */
    QLineEdit *vFileAddrLineEdit = nullptr;
    QPushButton *vFileSeletPushButton = nullptr;

    /* 2D图形显示部分 */
    vChartWidget *vChartData = new vChartWidget();

    /* 3D图形显示部分 */
    c3DWidget *v3DWidget = new c3DWidget();

    /* 3D图转动按钮 */
    QPushButton *rotateLeftButton  = new QPushButton("左转", this);
    QPushButton *rotateRightButton = new QPushButton("右转", this);


    /*------------------------使用值定义-------------------------------*/
    QList<RelatWellData>  vInputRelat;



    /* 文件处理相关部分 */
    // 工具函数：读取文件内容
    void readFiletoTab(const QString filePath);



public slots:
    /* 选择文件并打开操作 */
    void openFileDialog(void);



signals:
    /* 绘制2D图形 */
    void vCulDarwNewLine(QList<RelatWellData> pdata);
    /* 绘制3D图形 */
    void vCulDarw3DLine(QList<RelatWellData> pdata);

};

#endif // VPAGELAYOUT_H
